1. Field of the Invention
The invention relates in general to an image processing technique, and more particularly to a technique for generating an interpolated image.
2. Description of the Related Art
Accompanied with the ubiquity of various electronic products, multimedia systems such as home theaters are now prevalent in households. In many multimedia systems, an important hardware component is an image display apparatus. Therefore, methods for enhancing image quality to attract consumers have long been a focus to which image display apparatus manufacturers pay much attention.
In certain applications, a frame frequency of dynamic images provided to an image display apparatus is lower than a frame update frequency of the image display apparatus itself. For example, a frame frequency of an original dynamic image is 60 Hz, whereas a frame update frequency of an image display apparatus is 120 Hz. Accordingly, the image display apparatus usually generates 60 additional frames according to the original frame being updated 60 times per second, so that a frame presented to a monitor is 120 frames per second. A most simple yet rather crude approach to achieve the 120 frames per second frame rate is to play each original frame twice. However, such approach suffers from a drawback that a viewer may sense insufficient smoothness in the frames presented. Another common approach is generating and playing an interpolated frame between two successive original frames.
In recent years, motion estimation and motion compensation techniques developed based on the concept of motion vectors have been extensively applied to image compression software/hardware. Similarly, an image display apparatus may also utilize a motion vector of two original frames to generate an interpolated image. Before generating an interpolated image according to a motion vector, the motion vector of two original frames must first be determined. In practice, an image processing apparatus may divide each frame into a plurality of blocks and estimate a motion vector of each block. Taking a block size of 8*8 pixels for example, supposing a block A1 of a frame A and a block B1 of a frame B have a same planar coordinate, the image processing apparatus compares a range of 32*32 pixels regarding the block B1 as a center to determine which 8*8 block is the most similar to the block A1, thereby identifying the motion vector between the block A1 and the block B1.
Theoretically speaking, a probability of correctly determining a motion vector becomes higher as the above comparison range gets larger. However, an image processing apparatus generally cannot define an excessively large comparison range due to limitations of an allowed calculation period. In the event that an object originally in block A1 moves exceptionally fast and its position in block B1 exceeds the comparison range, the image processing apparatus may fail to accurately identify the motion vector between blocks A1 and B1 when searching the comparison range. As another example, in the event that a photographed object changes drastically in an extremely short period resulting in an extraordinary difference between blocks A1 and B1, the image processing apparatus is also likely to misjudge the motion vector between the two blocks A1 and B1.
In sum, it is possible that a motion vector can be misjudged from time to time leading to an erroneous interpolation outcome. For example, a sky image in an interpolated image may be inappropriately presented as a tree image that obviously does not fit into surroundings. In addition, human eyes are particularly sensitive to such abrupt changes that are thus easily spotted.
In the view of the above, remedial measures for interpolation errors have been developed. In one of current approaches, an interpolated image as a new image is discarded when it is determined that a sum or all possible errors of an entire frame is higher than a threshold, and an original frame (e.g., frame A or frame B) is utilized as the new image; that is, it is in equivalence repeatedly playing the original frame. However, this approach also has a shortcoming that an image processing apparatus may be forced to give up other correct blocks with appropriate interpolation outcomes even when an entire interpolated frame only comprises a few blocks with severe errors, such that overall playback smoothness of the image is degraded due to repeatedly playing an original frame.